\contentsline {section}{\numberline {1}Introduction}{1}{section.1}
\contentsline {section}{\numberline {2}State of affairs}{3}{section.2}
\contentsline {section}{\numberline {3}The design}{3}{section.3}
\contentsline {subsection}{\numberline {3.1}PatientFileManager, PatientFile, Diagnose, Treatment}{8}{subsection.3.1}
\contentsline {subsubsection}{\numberline {3.1.1}Solution}{8}{subsubsection.3.1.1}
\contentsline {subsubsection}{\numberline {3.1.2}Alternative solution}{8}{subsubsection.3.1.2}
\contentsline {subsection}{\numberline {3.2}MedicalTest, Treatment, Machine and Medication}{8}{subsection.3.2}
\contentsline {subsubsection}{\numberline {3.2.1}Using enumerations}{9}{subsubsection.3.2.1}
\contentsline {subsubsection}{\numberline {3.2.2}Mapping Strings onto Objects}{9}{subsubsection.3.2.2}
\contentsline {subsubsection}{\numberline {3.2.3}Blueprints}{9}{subsubsection.3.2.3}
\contentsline {subsubsection}{\numberline {3.2.4}Important notes}{10}{subsubsection.3.2.4}
\contentsline {subsection}{\numberline {3.3}Scheduler}{10}{subsection.3.3}
\contentsline {subsubsection}{\numberline {3.3.1}HospitalDate}{10}{subsubsection.3.3.1}
\contentsline {subsubsection}{\numberline {3.3.2}TimeTable}{11}{subsubsection.3.3.2}
\contentsline {subsubsection}{\numberline {3.3.3}TimeSlot}{11}{subsubsection.3.3.3}
\contentsline {subsubsection}{\numberline {3.3.4}TimePoint}{12}{subsubsection.3.3.4}
\contentsline {subsubsection}{\numberline {3.3.5}Schedulable and SchedulableUser}{12}{subsubsection.3.3.5}
\contentsline {subsubsection}{\numberline {3.3.6}Constraints}{12}{subsubsection.3.3.6}
\contentsline {subsubsection}{\numberline {3.3.7}Task, UnscheduledTask, ScheduledTask, TaskManager}{12}{subsubsection.3.3.7}
\contentsline {subsubsection}{\numberline {3.3.8}TimeLord}{13}{subsubsection.3.3.8}
\contentsline {subsubsection}{\numberline {3.3.9}Observers}{13}{subsubsection.3.3.9}
\contentsline {subsection}{\numberline {3.4}Alternatives for the scheduling problem}{13}{subsection.3.4}
\contentsline {subsubsection}{\numberline {3.4.1}Original version}{13}{subsubsection.3.4.1}
\contentsline {subsubsection}{\numberline {3.4.2}First revision}{14}{subsubsection.3.4.2}
\contentsline {subsubsection}{\numberline {3.4.3}Second revision}{14}{subsubsection.3.4.3}
\contentsline {subsubsection}{\numberline {3.4.4}Third revision}{14}{subsubsection.3.4.4}
\contentsline {section}{\numberline {4}Use cases}{14}{section.4}
\contentsline {section}{\numberline {5}Other notable changes}{17}{section.5}
\contentsline {subsection}{\numberline {5.1}No more enumerations!}{17}{subsection.5.1}
\contentsline {subsection}{\numberline {5.2}Domain protection - not leaking internal data structures}{17}{subsection.5.2}
\contentsline {subsection}{\numberline {5.3}Defensive programming}{17}{subsection.5.3}
\contentsline {section}{\numberline {6}Eclemma testing report}{17}{section.6}
\contentsline {section}{\numberline {7}Todos for next iteration}{17}{section.7}
\contentsline {section}{\numberline {8}Conclusion}{18}{section.8}
\contentsline {section}{\numberline {9}Appendix I - Class diagram of the first revision of the scheduling system}{19}{section.9}
\contentsline {section}{\numberline {10}Appendix II - Class diagram of the second revision of the scheduling system}{20}{section.10}
\contentsline {section}{\numberline {11}Appendix III - Class diagram of the third revision of the scheduling system}{21}{section.11}
